<?php
	require_once PATH_OBJECT.'dataObject.php';
	
class dataObject_utilisateur extends dataObject
{
 	/** @desc    Identifiant de l'utilisateur
     * @var     int
     */
    public $_IDENTIFIANT_UTILISATEUR = 0;
    
    /**
     * @desc    login de l'utilisateur
     * @var     varchar
     */
    public $_CODE_UTILISATEUR = '';
    /**
     * @desc    nom de l'utilisateur
     * @var     varchar
     */
    public $_NOM_UTILISATEUR = '';

    /**
     * @desc    prénom de l'utilisateur
     * @var     int
     */
    public $_PRENOM_UTILISATEUR = '';
    
    /**
     * @desc    password de l'utilisateur
     * @var     int
     */
    public $_MOT_PASSE_UTILISATEUR = '';
    

   /** @desc    fonction de l'utilisateur
     * @var     int
     */
    public $_IDENTIFIANT_FONCTION = 0;
    
    /** @desc    profil de l'utilisateur
     * @var     int
     */
    public $_IDENTIFIANT_PROFIL = 0;
    
    
	public function __construct( $iId=0 )
    {
       parent::__construct();

       if ( $iId != 0 )
       {
            $sQuery = "SELECT   *   /*+ dataObject_utilisateur::__construct */  
                       FROM utilisateur 
            		   WHERE Identifiant_utilisateur =".$iId;
            
            $aRows =  self::$_oConnexion->query($sQuery);
			$aRow = $aRows[0];
            $this->_IDENTIFIANT_UTILISATEUR     = $iId;
            $this->_CODE_UTILISATEUR          	= $aRow['Code_utilisateur'];
            $this->_NOM_UTILISATEUR           	= $aRow['Nom_utilisateur'];
            $this->_PRENOM_UTILISATEUR     		= $aRow['Prenom_utilisateur'];
            $this->_MOT_PASSE_UTILISATEUR       = $aRow['Mot_passe_utilisateur'];
            $this->_IDENTIFIANT_FONCTION        = $aRow['Identifiant_fonction'];
            $this->_IDENTIFIANT_PROFIL        	= $aRow['Identifiant_profil'];

       }
    }
    public function dataObject_utilisateur( $iId=0 )
    {
    	__construct( $iId);
    }
    /**
     * récupere la table utilisateur selon le(s) criter(s) précisés 
	 */
    function utilisateur_select( $sCritere = null )
    {
        
    	$sQuery = "SELECT   *    
                   FROM utilisateur 
            	   WHERE 1 = 1
    				{$sCritere}";
    	
        $aRow =  self::$_oConnexion->query($sQuery);

        return $aRow;
    }
    
	public function utilisateur_getList()
    {
        $aRow = false;
  
        $aRow =  $this->utilisateur_select ();
        
        return $aRow;
    }
    
	public function utilisateur_getUniteRegion($sCodeUser)
    {
    	$aRow = false;
    	if($sCodeUser != '' || $sCodeUser !== null)
    	{
	        $sQuery = "SELECT un.Identifiant_unite, Code_unite,	Nom_unite, Etat_unite,
	        		 	reg.Identifiant_region, Code_region, Nom_region
	        			FROM unite un, utilisateur ut, agent ag, region reg
	       	 			WHERE ut.Code_utilisateur = '".$sCodeUser."'
	       	 			AND ag.Code_agent = ut.Code_utilisateur 
	       	 			AND ag.Identifiant_unite = un.Identifiant_unite
	       	 			AND reg.Identifiant_region = un.Identifiant_region ";
	    	
	        $aRow =  self::$_oConnexion->query($sQuery);
    	}
        return $aRow[0];
    }
    
	public function utilisateur_isAgent($IdUser)
    {
    	
	        $sQuery = "SELECT ag.Identifiant_agent
	        			FROM  utilisateur ut, agent ag
	       	 			WHERE ut.Identifiant_utilisateur = ".$IdUser."
	       	 			AND ag.Code_agent = ut.Code_utilisateur  ";
	    	
	        $aRow =  self::$_oConnexion->query($sQuery);
    	if(!empty($aRow)) return $aRow[0];
        else return false;
    }
}
?>